<div class="row u-hide u-no-padding" data-flow-details="go">
  <div class="col-6">
    <h4>Why are snaps good for Go projects?</h4>
    <ul>
      <li>Easy to discover and install by millions using the Snap Store or command-line every day</li>
      <li>Automatically updated to the latest stable version of your app</li>
      <li>Revert to the previous version if an update fails, preserving data</li>
    </ul>
    <p>
      Programming in Go makes it easy to create a zip of your app that runs across Linux, without dependencies.
      However, end user discovery and update management remain a challenge.
      Snaps fill this gap, letting you distribute a Go app in an app store experience for end users.
    </p>

    <div class="p-flow-details__continue">
      <p>In just a few steps, you’ll have an example Go app in the Snap Store.</p>
      <a class="p-button--positive" href="/first-snap/golang">Continue &rsaquo;</a>
    </div>
  </div>

  <div class="col-6">
    <h4>Here’s how httplab defines snapcraft.yaml:</h4>
    <div class ="p-show-more is-collapsed" data-js="js-show-more">
      <pre class="p-code-yaml"><b>name</b>: httplab
<b>version</b>: git
<b>summary</b>: An interactive web server.
<b>description</b>: |
  HTTPLab let you inspect HTTP requests [&hellip;]

<b>confinement</b>: devmode
<b>base</b>: core18

<b>parts</b>:
  <b>httplab</b>:
    <b>plugin</b>: go
    <b>go-importpath</b>: github.com/gchaincl/httplab
    <b>source</b>: .
    <b>source-type</b>: git
    <b>build-packages</b>:
      - gcc

<b>apps</b>:
  <b>httplab</b>:
    <b>command</b>: bin/httplab</pre>

      {% include "home/_fsf_yaml_show_more.html" %}

    </div>
  </div>
</div>
